import { createRouter, createWebHistory } from 'vue-router'
import Home from '../views/home/index.vue'
import assembleRouter from './assembleRouting'

// 自动装载子路由
const childrenRouters = assembleRouter();
/// TODO 路由对象数组，考虑到路由会存在额外参数，故此不做路由自动填装
// 普通页面
const pages = [{
  path: '/', // 首页
  component: Home
}, {
  path: '/tool',
  component: () => import('@/views/tool/index.vue'),
  children: childrenRouters['tool'],
  redirect: '/tool/test'
}, {
  path: '/train',
  component: () => import('@/views/train/index.vue'),
  children: childrenRouters['train'],
  redirect: '/train/welcome'
}]

// 异常/loading特殊界面
const percialInterface = [
  // TODO 请保持404界面在routes最后一项 用以匹配路由不匹配问题
  {
    path: '/404',
    name: '404',
    component: () => import('@/views/NotDefined/index.vue')
  }, {
    path: '/:catchAll(.*)', // 重定向404页面
    redirect: '/404'
  }]

const router = createRouter({
  history: createWebHistory(), // 2种路由模式 createWebHistory 和 createWebHashHistory
  scrollBehavior: (to, from, savePosition) => { // 路由跳转页面滚动位置，savePosition 可以用来记录上一次路由页面滚动位置
    return {
      top: 0
      // bottom:0
    }
  },
  routes: [
    ...pages,

    // ...percialInterface
  ]
})

export default router
